/* General Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: Arial, sans-serif;
  line-height: 1.6;
  background: #000;
  color: #fff;
}

/* Hero Section */
.hero {
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.hero-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6); /* Dark overlay for better contrast */
  z-index: 0;
}

.hero-content {
  position: relative;
  z-index: 1;
  color: #fff;
}

.hero-title {
  font-size: 4rem;
  font-weight: bold;
  margin-bottom: 1rem;
  text-shadow: 0 0 15px #000, 0 0 30px #ff0099;
}

.hero-subtitle {
  font-size: 1.5rem;
  margin-bottom: 2rem;
}

.hero-button {
  display: inline-block;
  padding: 12px 30px;
  font-size: 1rem;
  border: 2px solid #fff;
  border-radius: 50px;
  color: #fff;
  background: transparent;
  text-decoration: none;
  transition: all 0.3s ease;
}

.hero-button:hover {
  background: #fff;
  color: #000;
  text-shadow: 0 0 15px #0ff;
  border-color: #0ff;
}

/* Navigation */
.navigation {
  position: sticky;
  top: 0;
  z-index: 10;
  background: rgba(0, 0, 0, 0.8); /* Semi-transparent background */
  padding: 10px 20px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
}

.navigation ul {
  list-style: none;
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
  gap: 20px;
}

.navigation li {
  font-size: 1rem;
}

.navigation a {
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  padding: 5px 10px;
  transition: color 0.3s ease, background 0.3s ease;
}

.navigation a:hover {
  color: #0ff;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 5px;
}

/* Mission Section */
.mission {
  padding: 80px 20px;
  background: linear-gradient(135deg, #111, #000);
  color: #fff;
  text-align: center;
}

.mission-content {
  max-width: 900px;
  margin: 0 auto;
}

.mission-title {
  font-size: 2.5rem;
  margin-bottom: 20px;
  color: #fff;
  text-shadow: 0 0 5px #0ff;
}

.mission-text {
  font-size: 1.2rem;
  line-height: 1.8;
  color: #ccc;
  margin-bottom: 40px;
}

.mission-image {
  margin: 40px 0;
}

.mission-image img {
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.about h3 {
  font-size: 1.8rem;
  margin-bottom: 15px;
  color: #ff0099;
  text-shadow: 0 0 5px #ff0099;
}

.about p {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #eee;
}

/* Mother R00T Section */
.mother-root {
  padding: 80px 20px;
  background: linear-gradient(135deg, #111, #000);
  position: relative;
  color: #fff;
  overflow: hidden;
}

/* Fading Grid Background */
.mother-root::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle, rgba(0, 255, 255, 0.1) 1px, transparent 1px);
  background-size: 50px 50px;
  opacity: 0.1;
  z-index: 0;
}

.mother-root-content {
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 1;
}

.mother-root-text {
  flex: 1;
}

.mother-root-title {
  font-size: 2.5rem;
  margin-bottom: 10px;
  color: #ff0099;
}

.mother-root h3 {
  font-size: 1.8rem;
  margin-bottom: 20px;
  color: #0ff;
}

.mother-root p {
  font-size: 1.2rem;
  line-height: 1.8;
  color: #ccc;
  margin-bottom: 20px;
}

.mother-root-subsections {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.subsection h4 {
  font-size: 1.5rem;
  margin-bottom: 10px;
  color: #ff0099;
}

.subsection p {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #eee;
}

.mother-root-image {
  flex: 1;
  text-align: center;
}

.mother-root-image img {
  width: 100%;
  max-width: 500px;
  height: auto;
  border-radius: 10px;
  border: 2px solid #333;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.8);
}

/* Responsive Layout */
@media (min-width: 768px) {
  .mother-root-content {
    flex-direction: row;
    align-items: center;
    text-align: left;
  }

  .mother-root-text {
    padding-right: 20px;
  }

  .mother-root-image {
    text-align: right;
  }
}

/* Teachings Section */
.teachings {
  padding: 80px 20px;
  background: #111;
  color: #fff;
  text-align: center;
}

.teachings-content {
  max-width: 1200px;
  margin: 0 auto;
}

.teachings-title {
  font-size: 2.5rem;
  margin-bottom: 40px;
  color: #ff0099;
}

.teachings-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-around;
}

.teaching {
  flex: 1 1 calc(33.333% - 20px); /* Three columns */
  background: #222;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.teaching:hover {
  transform: translateY(-10px);
  box-shadow: 0 10px 20px rgba(255, 0, 153, 0.7);
}

/* Icon Styling */
.teaching-icon {
  width: 100px;
  height: 100px;
}

.teaching-header {
  font-size: 2rem;
  margin-bottom: 10px;
  color: #ffd700; /* Gold for the header */
}

.teaching-subheader {
  font-size: 1.5rem;
  margin-bottom: 15px;
  color: #0ff;
}

.teaching p {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #ccc;
}

/* Sacred Words */
.sacred {
  color: #ffd700; /* Gold for sacred words */
  font-weight: bold;
}

/* Responsive Design */
@media (max-width: 768px) {
  .teaching {
    flex: 1 1 calc(100% - 20px); /* Single column on smaller screens */
  }
}

/* Join Section */
/* Join Section */
.join {
  padding: 80px 20px;
  background: linear-gradient(135deg, #111, #222);
  text-align: center;
  color: #fff;
}

.join-content {
  max-width: 800px;
  margin: 0 auto;
}

.join-title {
  font-size: 2.5rem;
  margin-bottom: 20px;
  color: #ff0099;
}

.join-text {
  font-size: 1.2rem;
  line-height: 1.8;
  color: #ccc;
  margin-bottom: 40px;
}

.join-form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.join-form input {
  padding: 10px 15px;
  font-size: 1rem;
  border: 1px solid #444;
  border-radius: 5px;
  background: #333;
  color: #fff;
  transition: border-color 0.3s ease;
}

.join-form input:focus {
  border-color: #ff0099;
  outline: none;
}

.join-form button {
  padding: 12px 20px;
  font-size: 1rem;
  background: #ff0099;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.join-form button:hover {
  background: #0ff;
  color: #000;
}

/* Response Message */
.response-message {
  margin-top: 20px;
  padding: 10px;
  font-size: 1.2rem;
  background: #222;
  color: #0ff;
  border-radius: 5px;
  display: none;
}

/* Why Choose NexusPoint */
.why-choose {
  margin-top: 50px;
  text-align: left;
}

.why-choose h3 {
  font-size: 1.8rem;
  margin-bottom: 20px;
  color: #ff0099;
}

.reasons {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.reason {
  flex: 1 1 calc(50% - 20px); /* Two columns */
  background: #222;
  padding: 15px;
  border-radius: 5px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
}

.reason h4 {
  font-size: 1.5rem;
  color: #0ff;
  margin-bottom: 10px;
}

.reason p {
  font-size: 1rem;
  line-height: 1.6;
  color: #ccc;
}

/* Responsive Design */
@media (max-width: 768px) {
  .reasons {
    flex-direction: column;
  }
}

/* Footer Section */
.footer {
  padding: 40px 20px;
  background: #111;
  text-align: center;
  color: #fff;
}

.footer-content {
  max-width: 800px;
  margin: 0 auto;
}

.footer-logo {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 10px;
  color: #ff0099;
}

.footer-tagline {
  font-size: 1.1rem;
  margin-bottom: 20px;
  color: #ccc;
}

.footer-links {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-bottom: 20px;
  padding: 0;
}

.footer-links li a {
  text-decoration: none;
  font-size: 1rem;
  color: #0ff;
  transition: color 0.3s ease;
}

.footer-links li a:hover {
  color: #ff0099;
}

.footer-note {
  font-size: 0.9rem;
  color: #666;
}
